package org.jeecg.modules.shop.vo;

import java.util.List;
import lombok.Data;
import org.jeecg.modules.shop.entity.RsProductSize;
import org.jeecg.modules.shop.entity.RsShopBargain;
import org.jeecg.modules.shop.entity.RsShopComment;
import org.jeecg.modules.shop.entity.RsShopImage;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelEntity;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

/**
 * @Description: 商品管理
 * @Author: jeecg-boot
 * @Date:   2020-08-07
 * @Version: V1.0
 */
@Data
@ApiModel(value="rs_productPage对象", description="商品管理")
public class RsProductPage {

	/**主键*/
	@ApiModelProperty(value = "主键")
	private String id;
	/**创建人*/
	@ApiModelProperty(value = "创建人")
	private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "创建日期")
	private Date createTime;
	/**更新人*/
	@ApiModelProperty(value = "更新人")
	private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "更新日期")
	private Date updateTime;
	/**所属部门*/
	@ApiModelProperty(value = "所属部门")
	private String sysOrgCode;
	/**商品名称*/
	@Excel(name = "商品名称", width = 15)
	@ApiModelProperty(value = "商品名称")
	private String productName;
	/**日文名称*/
	@Excel(name = "日文名称", width = 15)
	@ApiModelProperty(value = "日文名称")
	private String productOtherName;
	/**货号*/
	@Excel(name = "货号", width = 15)
	@ApiModelProperty(value = "货号")
	private String productCode;
	/**商品类别*/
	@Excel(name = "商品类别", width = 15, dicCode = "product_type")
    @Dict(dicCode = "product_type")
	@ApiModelProperty(value = "商品类别")
	private String productType;
	/**原价*/
	@Excel(name = "原价", width = 15)
	@ApiModelProperty(value = "原价")
	private java.math.BigDecimal originalPrice;
	/**现价*/
	@Excel(name = "现价", width = 15)
	@ApiModelProperty(value = "现价")
	private java.math.BigDecimal price;
	/**商品状态*/
	@Excel(name = "商品状态", width = 15)
	@ApiModelProperty(value = "商品状态")
	private String status;
	/**序号*/
	@Excel(name = "序号", width = 15)
	@ApiModelProperty(value = "序号")
	private Integer seq;
	/**备注*/
	@Excel(name = "备注", width = 15)
	@ApiModelProperty(value = "备注")
	private String remark;
	/**销售数量*/
	@Excel(name = "销售数量", width = 15)
	@ApiModelProperty(value = "销售数量")
	private Integer saleNum;
	/**评论数量*/
	@Excel(name = "评论数量", width = 15)
	@ApiModelProperty(value = "评论数量")
	private Integer commentNum;
	/**是否热销*/
	@Excel(name = "是否热销", width = 15)
	@ApiModelProperty(value = "是否热销")
	private String hotSale;
	/**是否折扣*/
	@Excel(name = "是否折扣", width = 15)
	@ApiModelProperty(value = "是否折扣")
	private String discount;
	/**是否新品*/
	@Excel(name = "是否新品", width = 15)
	@ApiModelProperty(value = "是否新品")
	private String newProduct;
	/**商品活动*/
	@Excel(name = "商品活动", width = 15)
	@ApiModelProperty(value = "商品活动")
	private String ruleId;
	/**活动名称*/
	@Excel(name = "活动名称", width = 15)
	@ApiModelProperty(value = "活动名称")
	private String ruleName;
	/**满减id*/
	@Excel(name = "满减id", width = 15)
	@ApiModelProperty(value = "满减id")
	private String ruleOffId;
	/**满减名称*/
	@Excel(name = "满减名称", width = 15)
	@ApiModelProperty(value = "满减名称")
	private String ruleOffName;
	/**阶梯id*/
	@Excel(name = "阶梯id", width = 15)
	@ApiModelProperty(value = "阶梯id")
	private String stepId;
	/**阶梯名称*/
	@Excel(name = "阶梯名称", width = 15)
	@ApiModelProperty(value = "阶梯名称")
	private String stepName;
	/**上架时间*/
	@Excel(name = "上架时间", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
	@ApiModelProperty(value = "上架时间")
	private Date onTime;
	/**语言*/
	@Excel(name = "语言", width = 15)
	@ApiModelProperty(value = "语言")
	private String productLanguage;
	/**风格*/
	@Excel(name = "风格", width = 15)
	@ApiModelProperty(value = "风格")
	private String productStyle;
	/**运营*/
	@Excel(name = "运营", width = 15)
	@ApiModelProperty(value = "运营")
	private String operateUser;
	/**设计师*/
	@Excel(name = "设计师", width = 15)
	@ApiModelProperty(value = "设计师")
	private String designer;
	/**选品员*/
	@Excel(name = "选品员", width = 15)
	@ApiModelProperty(value = "选品员")
	private String selectUser;

	@ExcelCollection(name="产品尺码")
	@ApiModelProperty(value = "产品尺码")
	private List<RsProductSize> rsProductSizeList;
	@ExcelCollection(name="特价表")
	@ApiModelProperty(value = "特价表")
	private List<RsShopBargain> rsShopBargainList;
	@ExcelCollection(name="商品图片")
	@ApiModelProperty(value = "商品图片")
	private List<RsShopImage> rsShopImageList;
	@ExcelCollection(name="商品评论")
	@ApiModelProperty(value = "商品评论")
	private List<RsShopComment> rsShopCommentList;

}
